package com.kingyea.mobilepolice.apimanage.providerservicemonitor.service;

import com.kingyea.mobilepolice.apimanage.providerservicemonitor.bean.ProviderServiceMonitor;

import java.util.List;
import java.util.Map;

/**
 * @author Mr.Lin
 * @version v1.0.0
 * @description ProviderServiceMonitor 接口
 * @date Created in 2018-05-21 14:11:27
 */
public interface ProviderServiceMonitorService {

    /**
     * 通过ID查找对象
     *
     * @param hostSerialNo
     * @param timeId
     * @return
     */
    ProviderServiceMonitor getById(String hostSerialNo, Long timeId) throws Exception;

    /**
     * 列表
     *
     * @param providerServiceMonitor
     * @return
     */
    List<ProviderServiceMonitor> list(ProviderServiceMonitor providerServiceMonitor) throws Exception;

    /**
     * 删除
     *
     * @param hostSerialNo, timeId
     * @return
     */
    int deleteById(String hostSerialNo, Long timeId) throws Exception;

    /**
     * 添加
     *
     * @param providerServiceMonitor
     * @return
     */
    ProviderServiceMonitor save(ProviderServiceMonitor providerServiceMonitor) throws Exception;

    /**
     * 更新
     *
     * @param providerServiceMonitor
     * @return
     */
    ProviderServiceMonitor update(ProviderServiceMonitor providerServiceMonitor) throws Exception;

    /**
     * 性能数据上报
     *
     * @param providerServiceMonitor
     * @return java.lang.Object
     * @author Mr.Lin
     * @date 2018/5/21 14:26
     */
    ProviderServiceMonitor report(ProviderServiceMonitor providerServiceMonitor) throws Exception;

    /**
     * 根据搜索条件搜索性能数据列表
     *
     * @param map
     * @return java.lang.Object
     * @author Mr.Lin
     * @date 2018/5/22 23:47
     */
    Object searchByCondition(Map<String, Object> map) throws Exception;
}
